Assessing Migratory Performance in Collision-Surviving Birds With Motus¶
This notebook analyzes migratory bird data from the Motus Wildlife Tracking System, specifically focusing on the Motus Northeast Collision Project. The project tracked six species that survived window collisions in the Lake Erie region (Cleveland and Pittsburgh) during 2018:
- American Woodcock
- White-throated Sparrow
- Gray Catbird
- Ovenbird
- Wood Thrush
- Magnolia Warbler
Background¶
Window collisions pose a severe threat to migratory bird populations, estimated to kill up to one billion birds annually. This research examines birds that survived collisions and were rehabilitated before being released with Motus nanotags for tracking. To learn more about the bird windows collision phenomenon, check out this article.
Research Focus¶
The analysis assesses migratory performance of collision-surviving birds by examining:
- Detection probabilities
- Migration patterns
- Travel speeds and distances
- Comparative analysis between rehabilitated and wild birds
Data Source¶
Data comes from the Motus Wildlife Tracking System (specifically the Northeast Collision Project), which uses automated radio-telemetry technology to track tagged birds with high geospatial accuracy.
The complete research paper can be found here.
Analysis Questions¶
Population Demographics¶
- What is the distribution of rehab vs non-rehab birds?
- Total counts by status
- Breakdown by species
- Detection frequencies
- Repeat detections analysis (birds detected multiple times)
Spatial Analysis¶
- What are the movement patterns?
- Geographic distribution of detections
- Range/territory size analysis
- Movement corridors identification
Initial import of Python libraries
Helper Functions¶
Main Analysis¶
Successfully loaded with mac_roman encoding Detections dataframe loaded with 17989 rows and 17 columns CPU times: user 88.1 ms, sys: 98.9 ms, total: 187 ms Wall time: 5.4 s
With the dataframe loaded, we can begin our analysis.
1. Population Demographics¶
- What is the distribution of rehab vs non-rehab birds?
- Total counts by status
- Breakdown by species
- Detection frequencies
- Repeat detections analysis (birds detected multiple times)
Found 36 unique tags Found 6 unique species: 1. White-throated Sparrow 2. American Woodcock 3. Gray Catbird 4. Ovenbird 5. Wood Thrush 6. Magnolia Warbler
Detections per species: speciesEN.x Wood Thrush 9374 Gray Catbird 6394 American Woodcock 1415 Magnolia Warbler 719 Ovenbird 53 White-throated Sparrow 13 Name: count, dtype: int64 Top 5 receivers by detection count: recvDeployName PARC Banding 9877 PARC Honey Hut 7967 Churchill - Fen 15 Long_Point_Tip 12 43.6:-79.35 11 Name: count, dtype: int64 Bottom 5 receivers by detection count: recvDeployName Napanee LOSH 1 PARC Mt. Laurel 1 Curries 1 Merlin 1 39.8:-79.7 1 Name: count, dtype: int64
Summary Statistics: ----------------- AMWO: 5 total birds (4 rehab [80.0%], 1 wild) WTSP: 5 total birds (1 rehab [20.0%], 4 wild) GRCA: 9 total birds (6 rehab [66.7%], 3 wild) OVEN: 7 total birds (4 rehab [57.1%], 3 wild) WOTH: 6 total birds (3 rehab [50.0%], 3 wild)
<module 'matplotlib.pyplot' from '/Users/km7yh/miniconda3/envs/gis_dev/lib/python3.11/site-packages/matplotlib/pyplot.py'>
<Figure size 1500x600 with 0 Axes>
Detection Patterns Key Observations:¶
- Species Detection Peaks: The highest peak is seen for the Ovenbird (Rehab) in early June, reaching nearly 1,000 detections. The Ovenbird (Wild) also shows a high detection rate around the same time but at a lower intensity.
- Species with Lower Detections: Other species like the American Woodcock, White-throated Sparrow, Gray Catbird, Magnolia Warbler, and Wood Thrush have relatively lower and more sporadic detection patterns throughout the year. Their peaks are considerably lower than the Ovenbird detections.
- Seasonal Patterns: There appears to be a seasonal trend where bird detections, especially for Ovenbird species, spike in early summer and decrease significantly afterward, with some smaller fluctuations seen in the fall.
Spatial Analysis¶
Using the MovingPandas library, we can analyze the movement patterns of the birds by creating trajectory data structures.
Built on top of GeoPandas and Pandas, this library provides a robust framework for trajectory analysis using the time-series data we already have from Motus.
According to its documentation, MovingPandas follows the trajectories = timeseries with geometries approach of modeling movement data.
Ultimately the trajectory represents a series of connected points in space and time. Adding them to the dataframe as a GeoDataFrame with a geometry column makes them easier to work with compared to the base data alone.
Trajectory Type: <class 'movingpandas.trajectory_collection.TrajectoryCollection'>
| tag_id | species | rehab_status | duration_hours | length_km | avg_speed_kmh | |
|---|---|---|---|---|---|---|
| 0 | 24345 | Ovenbird | Y | 86.592500 | 1946.312371 | 22.476685 |
| 1 | 24376 | Gray Catbird | N | 0.284722 | 10.167210 | 35.709227 |
| 2 | 28413 | Magnolia Warbler | N | 97.042778 | 524.176398 | 5.401498 |
| 3 | 28414 | White-throated Sparrow | N | 2.795000 | 246.577979 | 88.221101 |
| 4 | 28415 | Magnolia Warbler | Y | 344.381389 | 0.000000 | 0.000000 |
| 5 | 28416 | White-throated Sparrow | N | 0.001389 | 0.000000 | 0.000000 |
| 6 | 28419 | Magnolia Warbler | Y | 0.216944 | 0.000000 | 0.000000 |
| 7 | 28420 | American Woodcock | Y | 141.028889 | 0.000000 | 0.000000 |
| 8 | 28422 | Gray Catbird | Y | 20.001389 | 0.000000 | 0.000000 |
| 9 | 28423 | White-throated Sparrow | Y | 3.750833 | 178.202314 | 47.510059 |
| 10 | 28425 | Ovenbird | Y | 6.085556 | 212.006862 | 34.837717 |
| 11 | 28426 | White-throated Sparrow | N | 1.318056 | 63.250001 | 47.987356 |
| 12 | 28428 | American Woodcock | Y | 170.930278 | 0.000000 | 0.000000 |
| 13 | 28429 | Gray Catbird | Y | 17.289167 | 0.000000 | 0.000000 |
| 14 | 28433 | Magnolia Warbler | Y | 20.295000 | 233.226498 | 11.491821 |
| 15 | 28434 | Wood Thrush | N | 3037.487778 | 0.000000 | 0.000000 |
| 16 | 28436 | Gray Catbird | Y | 678.899444 | 536.068231 | 0.789614 |
| 17 | 28440 | Wood Thrush | N | 1.468889 | 0.000000 | 0.000000 |
| 18 | 28441 | Gray Catbird | Y | 1085.320833 | 1080.091990 | 0.995182 |
| 19 | 28445 | American Woodcock | N | 3686.137778 | 54.662266 | 0.014829 |
| 20 | 28446 | Gray Catbird | Y | 35.117500 | 0.000000 | 0.000000 |
| 21 | 28448 | Wood Thrush | Y | 194.942500 | 0.000000 | 0.000000 |
| 22 | 28449 | American Woodcock | Y | 274.779167 | 0.000000 | 0.000000 |
| 23 | 28451 | American Woodcock | Y | 4058.609444 | 615.327421 | 0.151610 |
| 24 | 28452 | Ovenbird | N | 407.132778 | 1050.644321 | 2.580594 |
| 25 | 28453 | Gray Catbird | Y | 226.470278 | 0.000000 | 0.000000 |
| 26 | 28455 | Wood Thrush | Y | 78.456944 | 318.946884 | 4.065247 |
| 27 | 28457 | Wood Thrush | Y | 3344.478333 | 603.590712 | 0.180474 |
| 28 | 28458 | Gray Catbird | N | 0.912778 | 45.675547 | 50.040161 |
| 29 | 28460 | Gray Catbird | N | 74.215833 | 63.250001 | 0.852244 |
| 30 | 28761 | Ovenbird | N | 0.068056 | 0.000000 | 0.000000 |
| 31 | 28763 | Wood Thrush | N | 2877.911389 | 0.000000 | 0.000000 |
Overall Summary by Rehab Status:
duration_hours length_km \
count mean std min max count mean
rehab_status
N 13 783.60 1393.28 0.00 3686.14 13 158.34
Y 19 567.77 1143.10 0.22 4058.61 19 301.25
avg_speed_kmh
std min max count mean std min max
rehab_status
N 306.41 0.0 1050.64 13 17.75 28.58 0.0 88.22
Y 499.64 0.0 1946.31 19 6.45 13.61 0.0 47.51
Trajectory Counts by Species:
Wild Rehab Total
species
American Woodcock 1 4 5
Gray Catbird 3 6 9
Magnolia Warbler 1 3 4
Ovenbird 2 2 4
White-throated Sparrow 3 1 4
Wood Thrush 3 3 6
Detailed Species Summary:
duration_hours \
count mean std min
species rehab_status
American Woodcock N 1 3686.14 NaN 3686.14
Y 4 1161.34 1932.37 141.03
Gray Catbird N 3 25.14 42.50 0.28
Y 6 343.85 443.32 17.29
Magnolia Warbler N 1 97.04 NaN 97.04
Y 3 121.63 193.17 0.22
Ovenbird N 2 203.60 287.84 0.07
Y 2 46.34 56.93 6.09
White-throated Sparrow N 3 1.37 1.40 0.00
Y 1 3.75 NaN 3.75
Wood Thrush N 3 1972.29 1708.64 1.47
Y 3 1205.96 1852.93 78.46
length_km \
max count mean std
species rehab_status
American Woodcock N 3686.14 1 54.66 NaN
Y 4058.61 4 153.83 307.66
Gray Catbird N 74.22 3 39.70 27.04
Y 1085.32 6 269.36 451.36
Magnolia Warbler N 97.04 1 524.18 NaN
Y 344.38 3 77.74 134.65
Ovenbird N 407.13 2 525.32 742.92
Y 86.59 2 1079.16 1226.34
White-throated Sparrow N 2.80 3 103.28 128.07
Y 3.75 1 178.20 NaN
Wood Thrush N 3037.49 3 0.00 0.00
Y 3344.48 3 307.51 301.96
avg_speed_kmh \
min max count mean
species rehab_status
American Woodcock N 54.66 54.66 1 0.01
Y 0.00 615.33 4 0.04
Gray Catbird N 10.17 63.25 3 28.87
Y 0.00 1080.09 6 0.30
Magnolia Warbler N 524.18 524.18 1 5.40
Y 0.00 233.23 3 3.83
Ovenbird N 0.00 1050.64 2 1.29
Y 212.01 1946.31 2 28.66
White-throated Sparrow N 0.00 246.58 3 45.40
Y 178.20 178.20 1 47.51
Wood Thrush N 0.00 0.00 3 0.00
Y 0.00 603.59 3 1.42
std min max
species rehab_status
American Woodcock N NaN 0.01 0.01
Y 0.08 0.00 0.15
Gray Catbird N 25.30 0.85 50.04
Y 0.47 0.00 1.00
Magnolia Warbler N NaN 5.40 5.40
Y 6.63 0.00 11.49
Ovenbird N 1.82 0.00 2.58
Y 8.74 22.48 34.84
White-throated Sparrow N 44.17 0.00 88.22
Y NaN 47.51 47.51
Wood Thrush N 0.00 0.00 0.00
Y 2.30 0.00 4.07
Geographic distribution of detections¶
The Motus detection dataset originates from the Motus Northeast Collaboration network. Plotting the receiver locations and the detected bird movements on a map can help us visualize the coverage and detectability of the network.
The northeast region of the US is covered by 37 receivers (as of Q4 2019), as shown in the maps below.
Number of receivers: 37
Receivers are color-coded by the number of detections they have recorded in total.
Plotting Trajectories¶
Simple trajectories can be plotted with Matplotlib using with each bird's tag ID, using the MovingPandas TrajectoryCollection object. From the base dataset this dataset is just a series of points with a location and timestamp, so this plot gives a quick representation of the detected bird movements as lines as well. MovingPandas has a number of additional functionalities for smoothing or otherwise interpolating the trajectories (my custom function is not one of them).
Plotting the detected bird movements on a map can help us visualize the coverage and detectability of the network.
From the Folium map below, we can see that the birds were detected in a number of locations across the northeast region of the US and southern Ontario on both sides of Lake Erie and Lake Ontario.